package com.marvels.financial.collection.dao;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

public interface OverdueCollectTaskDao {
	
	/**
	 * 修改合同催收标识
	 * @return
	 */
	public int updateContract();
	/**
	 * 出催
	 * @return
	 */
	public int urgent();
	/**
	 * 再次入催
	 * @return
	 */
	public int reminderAgin();
	
	/**
	 * 首次入催(还款当天也入催)
	 * @return
	 */
	public int firstReminder1();
	
	/**
	 * 首次入催(只有逾期才入催)
	 * @return
	 */
	public int firstReminder2();
	
	/**
	 * 更新入催数据
	 * @return
	 */
	public int updateReminder();
	
	
	/**
	 * 逾期信息每日统计
	 * @return
	 */
	public int overdueInformationDailyStatistics();
	
	/**
	 * 更新逾期信息每日统计
	 * @return
	 */
	public int updateOverdueDailyStatistics();
	
	/**
	 * 逾期信息每日统计
	 * @return
	 */
	public int overdueInformationDailyStatisticsFirst();
	
	/**
	 * 更新逾期金额
	 * @return
	 */
	public int updateOverDueAmt();
	
	
	/**
	 * 分期模式 更新逾期金额
	 * @return
	 */
	public int newUpdateOverDueAmt();
	
	/**
	 * 查询当日出催数量
	 * @return
	 */
	public List<Map<String,Object>> selectUrgentCount();
	
	/**
	 * 查询当日入催数量
	 * @return
	 */
	public List<Map<String,Object>> selectReminderCount();
	
	/**
	 *  分期模式时当天应还款客户入催修改合同催收标识
	 * @return
	 */
	public int newUpdateContract();
	
	/**
	 * 分期模式时首次入催(还款当天也入催)
	 * @return
	 */
	public int newFirstReminder1();	
	
	/**
	 * 分期模式时，再次入催
	 * @return
	 */
	public int newReminderAgin();
	
	/**
	 * 出催
	 * @return
	 */
	public int urgentByLoanId(@Param("loanId") String loanId);
}
